home *** CD-ROM | disk | FTP | other *** search
/ LOGIC Apps / Logic-APPLE_II_APPS.iso / mac / LOGIC Apple II 5.25" Library - ProDOS / PRO041.dsk / QUICK.APP.txt < prev    next >
Text File  |  2012-02-16  |  612b  |  35 lines

  1. "QUICK SORT"
  2. DIM ST(30,1) : REM MOVE THIS TO THE BEGINNING OF YOUR PROGRAM
  3. SP = 0 : ST(0,0) = 0
  4. SF = -1 : ST(0,1) = NI
  5. DO
  6. L = ST(SP,0) : R = ST(SP,1) : SP = SP - 1
  7. DO
  8. LI = L : RI = R : SA = SA((L + R) / 2)
  9. DO
  10. WHILE SA(LI) < SA
  11. LI = LI + 1
  12. WEND
  13. WHILE SA(RI) > SA
  14. RI = RI - 1
  15. WEND
  16. LONG IF LI <= RI
  17. SWAP SA(LI), SA(RI)
  18. LI = LI + 1 : RI = RI - 1
  19. END IF
  20. UNTIL LI > RI
  21. LONG IF (R - LI) > (RI - L)
  22. LONG IF L < RI
  23. SP = SP + 1 : ST(SP,0) = L : ST(SP,1) = RI
  24. END IF
  25. L = LI
  26. XELSE
  27. LONG IF LI < R
  28. SP = SP + 1 : ST(SP,0) = LI : ST(SP,1) = R
  29. END IF
  30. R = RI
  31. END IF
  32. UNTIL R <= L
  33. UNTIL SP = -1
  34. RETURN : REM QUICKSORT FINISHED HERE
  35.